指针和数组

  数组可以如下的定义:

    char v[10];    // 10个字符的数组

指针的定义与此类似

    char* p;       // 指向字符的指针

在声明里,[ ] 表示“的数组”,而 * 表示“的指针”。所有数组都以0作为它们的下界。因此v有10个元素,v[0]...v[9]。指针可以保有适当类型的对象的地址:

    p = &v[3];     // p指向v的第4个元素

一元的 & 是取地址运算符。

  考虑将10个元素从一个数组复制到另一个数组:

    void anther_function()
    {
        int v1[10];
        int v2[10];
        // ...
        for(int i = 0; i < 10; i+) v1[i] = v2[i];
    }

这里的 for 语句可以读作“将i设置为0,当i小于10时,做第i个元素的赋值并增大i的值”。在应用到整型变量上时,增量运算符 ++ 简单地将变量的值加1。

🔚